using System;
using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
using MonoDevelop.Core.Gui;
using MonoDevelop.Projects;

namespace MonoDevelop.ResourceEditor
{
	public class Services
	{

		public static MessageService MessageService 
		{
			get 
			{
				if (messageService == null)
					messageService = (MessageService) ServiceManager.GetService (typeof(MessageService));
				return messageService;
			}
		}
	
		public static ResourceService Resources 
		{
			get 
			{
				if (resourceService == null)
					resourceService = (ResourceService) ServiceManager.GetService (typeof(ResourceService));
				return resourceService;
			}
		}
	
		public static IDebuggingService DebuggingService 
		{
			get 
			{
				if (debuggingService == null)
					debuggingService = (IDebuggingService) ServiceManager.GetService (typeof(IDebuggingService));
				return debuggingService;
			}
		}
	
		public static LanguageBindingService Languages 
		{
			get 
			{
				if (languageBindingService == null)
					languageBindingService = (LanguageBindingService) ServiceManager.GetService (typeof(LanguageBindingService));
				return languageBindingService;
			}
		}
	
		public static DispatchService DispatchService {
			get 
			{
				if (dispatchService == null)
					dispatchService = (DispatchService) ServiceManager.GetService (typeof(DispatchService));
				return dispatchService;
			}
		}
		
		private static IDebuggingService debuggingService;
		private static MessageService messageService;
		private static ResourceService resourceService;
		private static LanguageBindingService languageBindingService;
		private static DispatchService dispatchService;
	}
}

